﻿#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdio.h>
#include <windows.h>
//void game()
//{
//	int r = rand() % 100 + 1;
//	int guess = 0;
//	int count = 5;
//	while (count)
//	{
//		printf("\n你还有%d次机会\n", count);
//		printf("猜数字->");
//		scanf_s("%d", &guess);
//		if (guess < r)
//		{
//			printf("猜小了\n");
//		}
//		else if (guess > r)
//		{
//			printf("猜大了\n");
//		}
//		else
//		{
//			printf("恭喜你猜对了\n");
//			break;
//		}
//		count--;
//	}
//	if (count == 0)
//	{
//		printf("你失败了，正确数字是：%d\n", r);
//	}
//}
//
//void menu()
//{
//	printf("***********************\n");
//	printf("****** 1. play ******\n");
//	printf("****** 0. exit ******\n");
//	printf("***********************\n");
//}
//
//int main()
//{
//	int input = 0;
//	srand((unsigned int)time(NULL));
//	do
//	{
//		menu();
//		printf("请选择:>");
//		scanf_s("%d", &input);
//		switch (input)
//		{
//		case 1:
//			game();
//			break;
//		case 0:
//			printf("游戏结束\n");
//			break;
//		default:
//			printf("选择错误，重新选择\n");
//			break;
//		}
//	} while (input);
//	return 0;
//}



////求10个数中的最大数
//int main()
//{
//	int arr[10] = { 0 };
//	int num = 0;
//	int max = 0;
//	for (num = 0; num < 10; num++)
//	{
//		scanf_s("%d", &arr[num]);	
// }
// max = arr[0];
//		for (num = 1; num<10; num++)
//		{
//			
//			if (arr[num] > arr[0])
//			{
//				max = arr[num];
//			}
//		}
//
//	printf("最大的数字是：%d", max);
//	return 0;
//}

// 
// 
//int main()
//{
//	int arr[10] = { 0 };
//	int i = 0;
//	int max = 0;
//
//	for (i = 0; i < 10; i++)
//	{
//		scanf_s("%d", &arr[i]);
//	}
//	//
//	max = arr[0];
//	for (i = 1; i < 10; i++)
//	{
//		if (arr[i] > max)
//			max = arr[i];
//	}
//	printf("max = %d\n", max);
//	return 0;
//}



//计算1 / 1 - 1 / 2 + 1 / 3 - 1 / 4 + 1 / 5 …… + 1 / 99 - 1 / 100 的值，
//打印出结果
//int main()
//{
//	int j = 0;
//	int o = 0;
//	float sum = 0.0f;
//	float sumj = 0.0f;
//	float sumo = 0.0f;
//	for (j = 1; j <= 100; j += 2)
//	{
//		sumj += 1 / j;
//	}
//	for (o = 2; o <= 100; o += 2)
//	{
//		sumo += 1 / o;
//	}
//	sum = sumj - sumo;
//	printf("%f", sum);
//	return 0;
//}

//#include<stdio.h>
//int main()
//{
//	double sum = 0.0;
//	int flag = 1;
//	int i;
//	for (int i = 1; i <= 100; i++)
//	{
//		sum += (flag) * 1.0 / i;
//		flag = -flag;
//	}
//	printf("%f\n", sum);
//	return 0;
//}
//
//
//100 + rand() % 100 + 1

//
//void meau()
//{
//	printf("*************\n");
//	printf("***1.start***\n");
//	printf("***2.exit****\n");
//
//}
//
//void game()
//{
//	int guess = 0;
//	int r = rand() % 100 + 1;
//	int count = 5;
//	while (count)
//	{
//		printf("\n你还有%d次机会\n", count);
//		printf("请输入你要猜的数字->");
//		scanf_s("%d", &guess);
//		if (guess > r)
//		{
//			printf("猜大了\n");
//		}
//		else if (guess < r)
//		{
//			printf("猜小了\n");
//		}
//		else
//		{
//			printf("猜对了\n");
//			break;
//		}
//		count--;
//	}
//		if (count == 0)
//		{
//			printf("game over,正确的答案是%d\n", r);
//		}
//		
//}
//
//int main()
//{
//	srand((unsigned int)time(NULL));
//	int input = 0;
//	do
//	{
//		meau();
//		printf("请选择: >");
//		scanf_s("%d", &input);
//		switch (input)
//		{
//			case 1:
//				game();
//				break;
//			case 2:
//				printf("游戏结束\n");
//				break;
//			default:
//				printf("选择错误，请重新选择\n");
//				break;
//		}
//	}while (input);
//	return 0;
//}



////求10个数字的最大值
//int main()
//{
//	//得到10个数字并且储存起来
//	int arr[10] = {0};
//	int n = 0;
//	int max = 0;
//	for (n = 0; n < 10; n++)
//	{
//		scanf_s("%d",&arr[n]);
//	}
//	//求最大
//	max = arr[0];
//	int j = 0;
//	for (j = 1; j < 10; j++)
//	{
//		if (arr[j] > max)
//		{
//			max = arr[j];
//		}
//	}
//	printf("\nmax = %d", max);
//	return 0;
//}


////计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值，打印出结果
//int main()
//{
//	double j = 0;
//	double o = 0;
//	int a = 0;
//	int b = 0;
//	for (a = 1; a <= 100; a += 2)
//	{
//		j += 1.0 / a;
//	}
//	for (b = 2; b <= 100; b += 2)
//	{
//		o += 1.0 / b;
//	}
//	double sum = j - o;
//	printf("%f", sum);
//	return 0;
//}


//写一个代码：打印100~200之间的素数
//int main()
//{
//	int num = 0;
//	for (num = 100; num <= 200; num++)
//	{
//		if ()
//		{
//			printf("这个数字是素数：%d\n", num);
//		}
//	}
//	return 0;
//}


//int main()
//{
//	int i = 0;
//	int count = 0;
//
//	// 外层循环用来获取100~200之间的所有数据，100肯定不是素数，因此i从101开始
//	for (i = 101; i <= 200; i++)
//	{
//		//判断i是否为素数：用[2, i)之间的每个数据去被i除，只要有一个可以被整除，则不是素数
//		int j = 0;
//		for (j = 2; j < i; j++)
//		{
//			if (i % j == 0)
//			{
//				break;
//			}
//		}
//
//		// 上述循环结束之后，如果j和i相等，说明[2, i）之间的所有数据都不能被i整除，则i为素数
//		if (j == i)
//		{
//			count++;
//			printf("%d ", i);
//		}
//	}
//
//	printf("\ncount = %d\n", count);
//	return 0;
//}







//int main()
//{
//	int num = 0;
//	int count = 0;
//	for (num = 101; num <= 200; num++)
//	{
//		int j = 0;
//		for (j = 2; j <= num; j++)
//		{
//			if (num % j == 0)
//			{
//				break;
//			}	
//		}
//		if (j == num)
//		{
//				count++;
//				printf("%d ", num);
//		}
//	}
//	printf("\ncount=%d\n", count);
//	return 0;
//}



////给定两个数，求这两个数的最大公约数
//int main()
//{
//	int a = 0;
//	int b = 0;
//	int mid = 0;
//	scanf_s("%d%d", &a, &b);
//	while (mid = a % b)
//	{
//		a = b;
//		b = mid;
//	}
//	printf("%d",b);
//	return 0;
//}


////练习1：多个字符从两端移动，向中间汇聚
////#include <Windows.h>
//int main()
//{
//	char arr1[] = "****************";
//	char arr2[] = "Hellow to ouyang";
//	int left = 0;
//	int right = strlen(arr1) - 1;
//	printf("%s\n", arr2);
//	while (left <= right)
//	{
//		Sleep(1000);
//		arr2[left] = arr1[left];
//		arr2[right] = arr1[right];
//		left++;
//		right--;
//		printf("%s\n", arr2);
//	}
//	return 0;
//}



//练习2：⼆分查找
//int main()
//{
//	int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
//	int left = 0;
//	int right = sizeof(arr)/sizeof(arr[0]);
//	int key = 7;
//	int mid = 0;
//	int find = 0;
//	while (left <= right)
//	{
//		mid = (left + right) / 2;
//		if (arr[mid] > key)
//		{
//			right = mid - 1;
//		}
//		else if (arr[mid] < key)
//		{
//			left = mid + 1;
//		}
//		else
//		{
//			find = 1;
//			break;
//		}
//	}
//	if (1 == find)
//	{
//		printf("找到了，下表是：%d\n", mid);
//	}	
//	else
//	{
//		printf("找不到");
//	}
//}